package com.hrc.springboot.service;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;

@Service
public class ScheduleService {

    /**
     * 当前这个注解中的属性支持cron表达式，精确到秒，分钟，小时，日，月，周几
     * 语法格式为(* * * * * MON-FRI)，空格的分割分别对应 秒，分钟，小时，日，月，周几
     * 所以上面的语法的意思是从周一到周五，每分每秒运行一次
     *      举个栗子
     *          (0 0/5 14,18 * * ?) 每天14-18点整，每5分钟执行一次
     *          (0 15 10 ? * 1-6) 每个月的周一到周六的10:15执行一次
     *          (0 0 2 ? * 6L) 每个月的最后一个周六的凌晨两点执行一次
     *          (0 0 2 LW * ?) 每个月的最后一天的凌晨两点执行一次
     *          (0 0 2-4 ? * 1#1) 每个月的第一个周一凌晨两点到四点，每个整点执行一次
     */
    // @Scheduled(cron = "0 * * * * MON-SAT") // 每分钟执行一次
    // @Scheduled(cron = "0,1,2,3,4,5 * * * * MON-SAT") // 每逢0-5执行一次
    // @Scheduled(cron = "0-5 * * * * MON-SAT")
    @Scheduled(cron = "0/5 * * * * MON-SAT") // 每隔5秒执行一次
    public void hello() {
        System.out.println("你好...");
    }

}
